/******************************************************************************

                                DIMS.H

  Title:  Include file for Electron Density Calculation by Holographic 
	  Reconstruction: basic dimensions and related variables.
  Author:  Hanna Szoke
  Date:  Separated off on 8/16/95

******************************************************************************/

real	nusq(int, int, int) ;		/* old */
real	fc_nusq(int) ;		
real	fo_nusq(int) ;		
void	fetch_hkl(int, int *, int *, int *) ;
void	fetch_Lhkl(int, float *, float *, float *) ;
void    getAmpPhase(COMPLEX *, real, real *, real *) ;

#define	NUMSEGS	5		/* for analyzing shells in (hkl) space) */

#define	MIN_DENSITY	0.
#define	MAX_DENSITY	1.e10 
 
extern	int     Nx, Ny, Nz ;    /* solution space dimensions */
extern	float	floatNx ;
extern	float	floatNy ;
extern	float	floatNz ;
extern	int     Np ;            /* product of Nx*Ny*Nz */
extern	int     Nptotal ;       /* Np */
extern	int	Nhr ;		/* # highres points	*/
extern	int	Npextended ;	/* Nptotal + Nhr (high resolution)	*/
extern	int	Nh, Nk, Nl ;	/* reciprocal space dimensions	*/
extern	int	Nfob ;		/* length of Fo list	*/
extern	int	Nfc ;		/* length of Fc list	*/
extern	int	Nfft ;		/* = (thereis_phext)? Nfob+Nfc: Nfob	*/

extern	real	grid_spacing ;  /* solution resolution */
extern	real	dr ;		/* actual average resolution */
extern	real	eta ;           /* factor describing spread of Gaussians */
extern	real	delfac ;	/* PISQ * eta * dr * dr	*/
extern	real	input_res;	/* resolution input variable	*/
extern	real	limit_rat ;	/* 1/(dr*dr)	*/
extern	real	dsq_limit ;	/* effective limit from data or limit_rat */
extern	real	nusqlim[] ;	/* values for 1/8, 1/4,... of (hkl) shells */
extern	int	useSig ;	/* if TRUE, use sigmas in input fobs files */
extern	int	HighRes ;	/* if TRUE, high-resolution processing on  */
extern	real	hrCutoff ;	/* hrCutoff * <vox> = high res limit */
extern	real	fscale ;	/* scaling factor for fo data */
extern	real	amp0 ;		/* amp of Fc file at (000)	*/
extern	real	phase0 ;	/* phase of Fc file at (000)	*/
extern	real	F000 ;		/* amp of Fo file at (000)	*/
extern	real	S000 ;		/* sigma  of Fo  file at (000)	*/

extern	float	min_voxel ;	/* min. voxel value for the protein */
extern	float	max_voxel ;	/* max. voxel value for the protein */

